//
// Camera.hh for Camera in /tmp/noboa-y-global/yn
//
// Made by maxime marie
// Login   <marie_m@epitech.net>
//
// Started on  Fri Apr 20 14:11:40 2012 maxime marie
// Last update Wed May  2 17:21:03 2012 youri noboa
//

#ifndef		CAMERA_HH__
# define	CAMERA_HH__

#include	<cstdlib>
#include	<list>
#include	<GL/gl.h>
#include	<GL/glu.h>
#include	<Clock.hpp>
#include	<Color.hpp>
#include	<Game.hpp>
#include	<GameClock.hpp>
#include	<Image.hpp>
#include	<Model.hpp>
#include	<Window.hpp>

#include	"Vector3f.hh"

class		Camera
{
public :
  Camera(void);
  void		initialize(void);
  void		update(const gdl::GameClock&, gdl::Input&);

  void		Focalise(void);
  void		Distance(float distance);

  void		RotationY(float angle);
  // void		RotationZX(float angle);

private:
  Vector3f	Orientation;
  Vector3f	Focalisation;
  Vector3f	Position;
};

#endif		/*!CAMERA_HH__*/
